package com.niiwoo.civet.trade.service;

import java.util.Date;
import java.util.List;

import com.niiwoo.civet.trade.dto.common.ProjectDTO;
import com.niiwoo.civet.trade.enums.ProjectStatusEnum;
import com.niiwoo.civet.trade.enums.ProjectSubStatusEnum;

/**
 * @Description: 标的通用服务
 * @Author:LiJian
 * @Date:2017/11/15
 */
public interface ProjectCommonDubboService {

    /**
     * 统计用户相应状态下标的个数
     * @param userId
     * @param projectStatus 标的状态
     * @param projectSubStatus 标的子状态（可空）
     * @return
     */
    int getSpeedLoanProjectNumByStatus(String userId, ProjectStatusEnum projectStatus, ProjectSubStatusEnum projectSubStatus);

    /**
     * 判断用户是否第二次借款
     * 1、当前至少有一笔已结清借款
     * 2、当前借款无逾期
     * 3、历史借款逾期为超过30天
     * @param userId
     * @return
     */
    boolean userIsSecondLoan(String userId);

    /**
     * 查询标的信息
     * @param userId
     * @param projectId
     * @return
     */
    public ProjectDTO selectByUserIdAndProjectId(String userId, Long projectId);

    default Date getCurrentDate() {
    	throw new UnsupportedOperationException("方法未实现");
    };
    
    /**
     * 获取APP下载地址
     * 1：安卓，2：IOS
     * @return
     */
    default List<String> getAppDownloadUrl(){
    	throw new UnsupportedOperationException("方法未实现");
    }
    
    
    
    
    
}
